1 module geany_d_binding.scintilla.Scintilla;
2 
3 import geany_d_binding.scintilla.types;
4 
5 extern(System) @nogc nothrow:
6 
7 struct SCNotification
8 {
9     Sci_NotifyHeader nmhdr;
10     Sci_Position position;
11     /* SCN_STYLENEEDED, SCN_DOUBLECLICK, SCN_MODIFIED, SCN_MARGINCLICK, */
12     /* SCN_NEEDSHOWN, SCN_DWELLSTART, SCN_DWELLEND, SCN_CALLTIPCLICK, */
13     /* SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK, SCN_HOTSPOTRELEASECLICK, */
14     /* SCN_INDICATORCLICK, SCN_INDICATORRELEASE, */
15     /* SCN_USERLISTSELECTION, SCN_AUTOCSELECTION */
16 
17     int ch;
18     /* SCN_CHARADDED, SCN_KEY, SCN_AUTOCCOMPLETED, SCN_AUTOCSELECTION, */
19     /* SCN_USERLISTSELECTION */
20     int modifiers;
21     /* SCN_KEY, SCN_DOUBLECLICK, SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK, */
22     /* SCN_HOTSPOTRELEASECLICK, SCN_INDICATORCLICK, SCN_INDICATORRELEASE, */
23 
24     int modificationType;   /* SCN_MODIFIED */
25     const(char)*text;
26     /* SCN_MODIFIED, SCN_USERLISTSELECTION, SCN_AUTOCSELECTION, SCN_URIDROPPED */
27 
28     Sci_Position length;        /* SCN_MODIFIED */
29     Sci_Position linesAdded;    /* SCN_MODIFIED */
30     int message;    /* SCN_MACRORECORD */
31     uptr_t wParam;  /* SCN_MACRORECORD */
32     sptr_t lParam;  /* SCN_MACRORECORD */
33     Sci_Position line;      /* SCN_MODIFIED */
34     int foldLevelNow;   /* SCN_MODIFIED */
35     int foldLevelPrev;  /* SCN_MODIFIED */
36     int margin;     /* SCN_MARGINCLICK */
37     int listType;   /* SCN_USERLISTSELECTION */
38     int x;          /* SCN_DWELLSTART, SCN_DWELLEND */
39     int y;      /* SCN_DWELLSTART, SCN_DWELLEND */
40     int token;      /* SCN_MODIFIED with SC_MOD_CONTAINER */
41     Sci_Position annotationLinesAdded;  /* SCN_MODIFIED with SC_MOD_CHANGEANNOTATION */
42     int updated;    /* SCN_UPDATEUI */
43     int listCompletionMethod;
44     /* SCN_AUTOCSELECTION, SCN_AUTOCCOMPLETED, SCN_USERLISTSELECTION, */
45 }
46 
47 struct Sci_NotifyHeader
48 {
49     /* Compatible with Windows NMHDR.
50      * hwndFrom is really an environment specific window handle or pointer
51      * but most clients of Scintilla.h do not have this type visible. */
52     void *hwndFrom;
53     uptr_t idFrom;
54     uint code;
55 }
56 
57 enum Msg : uint
58 {
59     SCN_CHARADDED = 2001,
60     SCN_SAVEPOINTREACHED = 2002,
61     SCN_SAVEPOINTLEFT = 2003,
62     SCN_KEY = 2005,
63     SCN_UPDATEUI = 2007,
64     SCN_MODIFIED = 2008,
65     SCN_PAINTED = 2013,
66     SCN_USERLISTSELECTION = 2014,
67     SCN_ZOOM = 2018,
68     SCN_AUTOCSELECTION = 2022,
69     SCN_AUTOCCANCELLED = 2025,
70     SCN_FOCUSIN = 2028,
71     SCN_FOCUSOUT = 2029,
72     SCN_AUTOCCOMPLETED = 2030
73 }
74 
75 enum Sci
76 {
77     SCI_AUTOCSHOW = 2100,
78     SCI_AUTOCGETSEPARATOR = 2107,
79     SCI_USERLISTSHOW = 2117,
80     SCI_CALLTIPSHOW = 2200,
81     SCI_WORDSTARTPOSITION = 2266,
82     SCI_AUTOCSETORDER = 2660,
83     SCI_AUTOCGETORDER = 2661
84 }
85 
86 /// Status Codes
87 enum Sc
88 {
89 	SC_ORDER_PERFORMSORT = 1
90 }